function AccountValidator() {
    this.formFields = [
        $('#user-name'), $('#pass-tf'), $('#re-pass-tf'), $('#inc-name'), $('#inc-address'),
        $('#contact-tel'), $('#contact-name'), $('#contact-phone'), $('#contact-email'),
        $('#contact-position'), $('#inc-number'), $('#inc-industry'), $('#inc-property')

    ];

    // '联系人电话',
    this.errorMsg = [
        '用户名', '密码', '确认密码', '企业/团队名称',
        '企业/团队地址', '企业/团队电话', '联系人姓名', '联系人手机', '联系人邮箱', '联系人职位'
    ];

}

//获取用户填写数据
AccountValidator.prototype.getUserData = function () {
    var userData = {
        'user': $('#user-name').val(),
        'pass': $('#pass-tf').val(),
        'inc-name': $('#inc-name').val(),
        'inc-address': $('#inc-address').val(),
        'contact-name': $('#contact-name').val(),
        'contact-phone': $('#contact-phone').val(),
        'contact-email': $('#contact-email').val(),
        'contact-tel': $('#contact-tel').val(),
        'contact-position': $('#contact-position').val(),
        'inc-number': $('#inc-number').val(),
        'inc-industry': $('#inc-industry').val(),
        'inc-property': $('#inc-property').val(),
        'business-license': $('#license-upload-image').attr('src'),
        'organization-code': $('#code-upload-image').attr('src')

    };
    return userData;
};


//验证用户填写的数据是否有效 type = update 验证更新信息， add: 添加用户信息
AccountValidator.prototype.validateForm = function (type) {

    if (!$('#checkbox-label').prop("checked")) {
        generateNotify('', '请同意《会议室使用须知》《违章处罚条例》', 'danger', 2000);
        return false;
    }

    //必填字段不能为空， 其中用户名和联系邮箱不能更改
    for (var i = 0; i < this.formFields.length - 3; i++) {
        if (this.formFields[i].val().trim() === '') {
            if (i === 0 || i === 1 || i === 2 || i === 3 || i === 4 || i === 5 || i === 8) { //如果是密码和确认密码
                if (type !== 'update') {
                    generateNotify('', this.errorMsg[i] + '不能为空', 'danger', 2000);
                    return false;
                }
            } else {
                generateNotify('', this.errorMsg[i] + '不能为空', 'danger', 2000);
                return false;
            }

        }
    }


    //检查用户名， 如果是更新信息，不用检查
    var name = this.formFields[0].val();
    var namePattern = /^[_a-zA-Z0-9_]{4,20}$/;
    if (type !== 'update') {

        if (name.length > 20 || name.length < 4) {
            generateNotify('', this.errorMsg[0] + '长度必须在4-20之间', 'danger', 2000);
            return false;
        }

        if (!namePattern.test(name)) {
            generateNotify('', this.errorMsg[0] + "必须是字母、数字和'_'组合", 'danger', 2000);
            return false;
        }
    }

    //检查密码，如果是更新页面，可以不填写密码
    var password = this.formFields[1].val();
    if (type != 'update' || password != '') {
        if (!namePattern.test(password)) {
            generateNotify('', this.errorMsg[1] + "必须是字母、数字和'_'组合", 'danger', 2000);
            return false;
        }

        var rePassword = this.formFields[2].val();
        // console.log('password -- ' + password);
        if (password != rePassword) {
            generateNotify('', "两次输入密码不一致", 'danger', 2000);
            return false;
        }
    }

    //如果不是更新，则检查公司/团队电话
    if (type !== 'update') {
        //检查公司/团队电话
        var telPattern = /^[0-9]{7,14}$/;
        if (!telPattern.test(this.formFields[5].val())) {
            generateNotify('', this.errorMsg[5] + "格式错误", 'danger', 2000);
            return false;
        }

        //检查联系人手机
        var phonePattern = /^[0-9]{11}$/;
        if (!phonePattern.test(this.formFields[7].val())) {
            generateNotify('', this.errorMsg[7] + "格式错误", 'danger', 2000);
            return false;
        }
    }


    //检查联系人邮箱, 如果是更新，不检查用户邮箱
    var ev = new EmailValidator();
    if (!ev.validateEmail(this.formFields[8].val())) {
        generateNotify('', this.errorMsg[8] + "格式错误", 'danger', 2000);
        return false;
    }

    //营业执照
    if($('#license-upload-image').attr('src') === ''){
        generateNotify('', "必须上传营业执照", 'danger', 2000);
        return false;
    }

    //组织机构代码扫描件
    if($('#code-upload-image').attr('src') === ''){
        generateNotify('', "必须上传组织机构代码扫描件", 'danger', 2000);
        return false;
    }


    return true;
};

	